package com.zhang;

/**
 * @author 张吉鑫
 * @Description 二分查找
 * @date 2021/4/13 19:58
 */
public class BinarySearch {

    /**
     * 二分查找
     * @param array 需要查找的数组
     * @param v 需要查找的值
     * @return 返回查找到的元素索引 -1为没找到
     */
    public  int indexOf(int[] array,int v){
        if (array == null || array.length == 0){
            return -1;
        }
        int begin = 0;
        int end = array.length;
        while (begin < end){
            int mid = (end + begin) >> 1;
            if (array[mid] > v){
                end = mid;
            }else if (array[mid] < v){
                begin = mid + 1;
            }else {
                return mid;
            }
        }
        return -1;

    }

}
